package ejemplo.academia;

import java.util.Date;

/**
 *
 * @author MAESTRIA
 */
public class Persona {
    
    protected String nombre;
    protected String numEmpleado;
    protected Direccion domicilio;
    protected Date fechaNacimiento;

    public Persona() {}
    
    public Persona(String nombre, String numEmpleado) {
        this.nombre = nombre;
        this.numEmpleado = numEmpleado;
    }

    public Persona(String nombre, String numEmpleado,
            Direccion dom, Date fNacimiento) {
        this(nombre, numEmpleado);
        this.domicilio = dom;
        this.fechaNacimiento = fNacimiento;
    }


    public Date getFechaNacimiento() {
        return fechaNacimiento;
    }

    public void setFechaNacimiento(Date fechaNacimiento) {
        this.fechaNacimiento = fechaNacimiento;
    }

    public int getEdad() {
        long msActuales = (new Date()).getTime();
        long msFechaNacimiento = fechaNacimiento.getTime();
        long msTranscurridos = msActuales - msFechaNacimiento;
        return (int) (msTranscurridos / (1000 * 60 * 60 * 24 * 365));
    }

    /**
     * @return the nombre
     */
    public String getNombre() {
        return nombre;
    }

    /**
     * @param nombre the nombre to set
     */
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    /**
     * @return the numEmpleado
     */
    public String getNumEmpleado() {
        return numEmpleado;
    }

    /**
     * @param numEmpleado the numEmpleado to set
     */
    public void setNumEmpleado(String numEmpleado) {
        this.numEmpleado = numEmpleado;
    }

    /**
     * @return the domicilio
     */
    public Direccion getDomicilio() {
        return domicilio;
    }

    /**
     * @param domicilio the domicilio to set
     */
    public void setDomicilio(Direccion domicilio) {
        this.domicilio = domicilio;
    }

    @Override
    public boolean equals(Object obj) {
        if (!(obj instanceof Persona)) return false;
        Persona otraPersona = (Persona) obj;
        return this.numEmpleado.equals(otraPersona.numEmpleado);
    }

    @Override
    public String toString() {
        return "Persona(" + numEmpleado + ", " + nombre + ")";
    }

}













